package com.mhc.haval.service;

import com.mhc.haval.dal.model.FuncDO;
import com.mhc.haval.dal.query.FuncQuery;
import com.mhc.haval.exception.HavalCommonException;
import com.mhc.haval.vo.FuncVO;

import java.util.List;
import java.util.Map;

/**
 * Created by Administrator on 2017/8/23.
 */
public interface FuncService {

    /**
     * 获取功能（权限）列表
     * @param queryMap
     * @return
     * @throws Exception
     */
    List<FuncDO> getFuncList(Map queryMap) throws HavalCommonException;

    /**
     * 新增/修改权限详情
     * @param funcVO
     * @return
     * @throws Exception
     */
    Boolean addOrUpdateFunc(FuncVO funcVO) throws HavalCommonException;

    /**
     * 计算总数目
     * @param funcQuery
     * @return
     */
    Integer countByQuery(FuncQuery funcQuery);

    /**
     * 计算总数目
     * @param queryMap
     * @return
     */
    Integer countByQueryMap(Map queryMap);

}
